package com.lubase.metadata.service;

import com.lubase.metadata.model.MapColumnModel;
import com.lubase.metadata.model.MapTableModel;

import java.util.List;

public interface ConstraintService {
    /**
     * 创建关系
     *
     * @param columnId
     * @param refColumnId
     * @return
     */
    Integer addConstraint(String columnId, String refColumnId);

    /**
     * 创建关系时根据表ID获取列信息
     *
     * @param tableId
     * @return
     */
    List<MapColumnModel> getAllowColumnMetaList(String tableId);

    /**
     * 获取关联表信息
     *
     * @param tableId
     * @return
     */
    List<MapTableModel> getReferenceTableList(String tableId);

    /**
     * 获取关联列信息
     *
     * @param refTableId
     * @return
     */
    List<MapColumnModel> getReferenceColumnList(String refTableId);
}
